home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1999 July: Mac OS SDK / Dev.CD Jul 99 SDK1.toast / Development Kits / Mac OS / Interfaces&Libraries / Universal / Interfaces / PInterfaces / QD3DStyle.p < prev    next >
Encoding:
Text File  |  1998-08-17  |  9.4 KB  |  240 lines  |  [TEXT/MPS ]

  1. {
  2.      File:        QD3DStyle.p
  3.  
  4.      Contains:    Q3Style types and routines                                         
  5.  
  6.      Version:    Technology:    Quickdraw 3D 1.5.4
  7.                  Release:    Universal Interfaces 3.2
  8.  
  9.      Copyright:    © 1995-1998 by Apple Computer, Inc., all rights reserved.
  10.  
  11.      Bugs?:        For bug reports, consult the following page on
  12.                  the World Wide Web:
  13.  
  14.                      http://developer.apple.com/bugreporter/
  15.  
  16. }
  17. {$IFC UNDEFINED UsingIncludes}
  18. {$SETC UsingIncludes := 0}
  19. {$ENDC}
  20.  
  21. {$IFC NOT UsingIncludes}
  22.  UNIT QD3DStyle;
  23.  INTERFACE
  24. {$ENDC}
  25.  
  26. {$IFC UNDEFINED __QD3DSTYLE__}
  27. {$SETC __QD3DSTYLE__ := 1}
  28.  
  29. {$I+}
  30. {$SETC QD3DStyleIncludes := UsingIncludes}
  31. {$SETC UsingIncludes := 1}
  32.  
  33. {$IFC UNDEFINED __QD3D__}
  34. {$I QD3D.p}
  35. {$ENDC}
  36.  
  37.  
  38. {$PUSH}
  39. {$ALIGN POWER}
  40. {$LibExport+}
  41.  
  42. {*****************************************************************************
  43.  **                                                                             **
  44.  **                    Style Base Class Routines                                 **
  45.  **                                                                             **
  46.  ****************************************************************************}
  47. FUNCTION Q3Style_GetType(style: TQ3StyleObject): TQ3ObjectType; C;
  48. FUNCTION Q3Style_Submit(style: TQ3StyleObject; view: TQ3ViewObject): TQ3Status; C;
  49.  
  50. {*****************************************************************************
  51.  **                                                                             **
  52.  **                                 Subdivision                                 **
  53.  **                                                                             **
  54.  ****************************************************************************}
  55.  
  56. TYPE
  57.     TQ3SubdivisionMethod         = LONGINT;
  58. CONST
  59.     kQ3SubdivisionMethodConstant = {TQ3SubdivisionMethod}0;
  60.     kQ3SubdivisionMethodWorldSpace = {TQ3SubdivisionMethod}1;
  61.     kQ3SubdivisionMethodScreenSpace = {TQ3SubdivisionMethod}2;
  62.  
  63.  
  64.  
  65. TYPE
  66.     TQ3SubdivisionStyleDataPtr = ^TQ3SubdivisionStyleData;
  67.     TQ3SubdivisionStyleData = RECORD
  68.         method:                    TQ3SubdivisionMethod;
  69.         c1:                        Single;
  70.         c2:                        Single;
  71.     END;
  72.  
  73. FUNCTION Q3SubdivisionStyle_New({CONST}VAR data: TQ3SubdivisionStyleData): TQ3StyleObject; C;
  74. FUNCTION Q3SubdivisionStyle_Submit({CONST}VAR data: TQ3SubdivisionStyleData; view: TQ3ViewObject): TQ3Status; C;
  75. FUNCTION Q3SubdivisionStyle_SetData(subdiv: TQ3StyleObject; {CONST}VAR data: TQ3SubdivisionStyleData): TQ3Status; C;
  76. FUNCTION Q3SubdivisionStyle_GetData(subdiv: TQ3StyleObject; VAR data: TQ3SubdivisionStyleData): TQ3Status; C;
  77.  
  78. {*****************************************************************************
  79.  **                                                                             **
  80.  **                                Pick ID                                         **
  81.  **                                                                             **
  82.  ****************************************************************************}
  83. FUNCTION Q3PickIDStyle_New(id: UInt32): TQ3StyleObject; C;
  84. FUNCTION Q3PickIDStyle_Submit(id: UInt32; view: TQ3ViewObject): TQ3Status; C;
  85. FUNCTION Q3PickIDStyle_Get(pickIDObject: TQ3StyleObject; VAR id: UInt32): TQ3Status; C;
  86. FUNCTION Q3PickIDStyle_Set(pickIDObject: TQ3StyleObject; id: UInt32): TQ3Status; C;
  87.  
  88. {*****************************************************************************
  89.  **                                                                             **
  90.  **                                Pick Parts                                     **
  91.  **                                                                             **
  92.  ****************************************************************************}
  93.  
  94. TYPE
  95.     TQ3PickPartsMasks             = LONGINT;
  96. CONST
  97.     kQ3PickPartsObject            = {TQ3PickPartsMasks}0;
  98.     kQ3PickPartsMaskFace        = {TQ3PickPartsMasks}$01;
  99.     kQ3PickPartsMaskEdge        = {TQ3PickPartsMasks}$02;
  100.     kQ3PickPartsMaskVertex        = {TQ3PickPartsMasks}$04;
  101.  
  102.  
  103. TYPE
  104.     TQ3PickParts                        = UInt32;
  105. FUNCTION Q3PickPartsStyle_New(parts: TQ3PickParts): TQ3StyleObject; C;
  106. FUNCTION Q3PickPartsStyle_Submit(parts: TQ3PickParts; view: TQ3ViewObject): TQ3Status; C;
  107. FUNCTION Q3PickPartsStyle_Get(pickPartsObject: TQ3StyleObject; VAR parts: TQ3PickParts): TQ3Status; C;
  108. FUNCTION Q3PickPartsStyle_Set(pickPartsObject: TQ3StyleObject; parts: TQ3PickParts): TQ3Status; C;
  109.  
  110. {*****************************************************************************
  111.  **                                                                             **
  112.  **                        Receive Shadows                                         **
  113.  **                                                                             **
  114.  ****************************************************************************}
  115. FUNCTION Q3ReceiveShadowsStyle_New(receives: TQ3Boolean): TQ3StyleObject; C;
  116. FUNCTION Q3ReceiveShadowsStyle_Submit(receives: TQ3Boolean; view: TQ3ViewObject): TQ3Status; C;
  117. FUNCTION Q3ReceiveShadowsStyle_Get(styleObject: TQ3StyleObject; VAR receives: TQ3Boolean): TQ3Status; C;
  118. FUNCTION Q3ReceiveShadowsStyle_Set(styleObject: TQ3StyleObject; receives: TQ3Boolean): TQ3Status; C;
  119.  
  120. {*****************************************************************************
  121.  **                                                                             **
  122.  **                            Fill Styles                                         **
  123.  **                                                                             **
  124.  ****************************************************************************}
  125.  
  126. TYPE
  127.     TQ3FillStyle                 = LONGINT;
  128. CONST
  129.     kQ3FillStyleFilled            = {TQ3FillStyle}0;
  130.     kQ3FillStyleEdges            = {TQ3FillStyle}1;
  131.     kQ3FillStylePoints            = {TQ3FillStyle}2;
  132.  
  133.  
  134. FUNCTION Q3FillStyle_New(fillStyle: TQ3FillStyle): TQ3StyleObject; C;
  135. FUNCTION Q3FillStyle_Submit(fillStyle: TQ3FillStyle; view: TQ3ViewObject): TQ3Status; C;
  136. FUNCTION Q3FillStyle_Get(styleObject: TQ3StyleObject; VAR fillStyle: TQ3FillStyle): TQ3Status; C;
  137. FUNCTION Q3FillStyle_Set(styleObject: TQ3StyleObject; fillStyle: TQ3FillStyle): TQ3Status; C;
  138.  
  139. {*****************************************************************************
  140.  **                                                                             **
  141.  **                            Backfacing Styles                                 **
  142.  **                                                                             **
  143.  ****************************************************************************}
  144.  
  145. TYPE
  146.     TQ3BackfacingStyle             = LONGINT;
  147. CONST
  148.     kQ3BackfacingStyleBoth        = {TQ3BackfacingStyle}0;
  149.     kQ3BackfacingStyleRemove    = {TQ3BackfacingStyle}1;
  150.     kQ3BackfacingStyleFlip        = {TQ3BackfacingStyle}2;
  151.  
  152. FUNCTION Q3BackfacingStyle_New(backfacingStyle: TQ3BackfacingStyle): TQ3StyleObject; C;
  153. FUNCTION Q3BackfacingStyle_Submit(backfacingStyle: TQ3BackfacingStyle; view: TQ3ViewObject): TQ3Status; C;
  154. FUNCTION Q3BackfacingStyle_Get(backfacingObject: TQ3StyleObject; VAR backfacingStyle: TQ3BackfacingStyle): TQ3Status; C;
  155. FUNCTION Q3BackfacingStyle_Set(backfacingObject: TQ3StyleObject; backfacingStyle: TQ3BackfacingStyle): TQ3Status; C;
  156.  
  157. {*****************************************************************************
  158.  **                                                                             **
  159.  **                            Interpolation Types                                 **
  160.  **                                                                             **
  161.  ****************************************************************************}
  162.  
  163. TYPE
  164.     TQ3InterpolationStyle         = LONGINT;
  165. CONST
  166.     kQ3InterpolationStyleNone    = {TQ3InterpolationStyle}0;
  167.     kQ3InterpolationStyleVertex    = {TQ3InterpolationStyle}1;
  168.     kQ3InterpolationStylePixel    = {TQ3InterpolationStyle}2;
  169.  
  170. FUNCTION Q3InterpolationStyle_New(interpolationStyle: TQ3InterpolationStyle): TQ3StyleObject; C;
  171. FUNCTION Q3InterpolationStyle_Submit(interpolationStyle: TQ3InterpolationStyle; view: TQ3ViewObject): TQ3Status; C;
  172. FUNCTION Q3InterpolationStyle_Get(interpolationObject: TQ3StyleObject; VAR interpolationStyle: TQ3InterpolationStyle): TQ3Status; C;
  173. FUNCTION Q3InterpolationStyle_Set(interpolationObject: TQ3StyleObject; interpolationStyle: TQ3InterpolationStyle): TQ3Status; C;
  174.  
  175. {*****************************************************************************
  176.  **                                                                             **
  177.  **                                Highlight Style                                 **
  178.  **                                                                             **
  179.  ****************************************************************************}
  180. FUNCTION Q3HighlightStyle_New(highlightAttribute: TQ3AttributeSet): TQ3StyleObject; C;
  181. FUNCTION Q3HighlightStyle_Submit(highlightAttribute: TQ3AttributeSet; view: TQ3ViewObject): TQ3Status; C;
  182. FUNCTION Q3HighlightStyle_Get(highlight: TQ3StyleObject; VAR highlightAttribute: TQ3AttributeSet): TQ3Status; C;
  183. FUNCTION Q3HighlightStyle_Set(highlight: TQ3StyleObject; highlightAttribute: TQ3AttributeSet): TQ3Status; C;
  184.  
  185. {*****************************************************************************
  186.  **                                                                             **
  187.  **                            FrontFacing Direction Styles                     **
  188.  **                                                                             **
  189.  ****************************************************************************}
  190.  
  191. TYPE
  192.     TQ3OrientationStyle         = LONGINT;
  193. CONST
  194.     kQ3OrientationStyleCounterClockwise = {TQ3OrientationStyle}0;
  195.     kQ3OrientationStyleClockwise = {TQ3OrientationStyle}1;
  196.  
  197. FUNCTION Q3OrientationStyle_New(frontFacingDirection: TQ3OrientationStyle): TQ3StyleObject; C;
  198. FUNCTION Q3OrientationStyle_Submit(frontFacingDirection: TQ3OrientationStyle; view: TQ3ViewObject): TQ3Status; C;
  199. FUNCTION Q3OrientationStyle_Get(frontFacingDirectionObject: TQ3StyleObject; VAR frontFacingDirection: TQ3OrientationStyle): TQ3Status; C;
  200. FUNCTION Q3OrientationStyle_Set(frontFacingDirectionObject: TQ3StyleObject; frontFacingDirection: TQ3OrientationStyle): TQ3Status; C;
  201.  
  202. {*****************************************************************************
  203.  **                                                                             **
  204.  **                                AntiAlias Style                                 **
  205.  **                                                                             **
  206.  ****************************************************************************}
  207.  
  208. TYPE
  209.     TQ3AntiAliasModeMasks         = LONGINT;
  210. CONST
  211.     kQ3AntiAliasModeMaskEdges    = {TQ3AntiAliasModeMasks}$01;
  212.     kQ3AntiAliasModeMaskFilled    = {TQ3AntiAliasModeMasks}$02;
  213.  
  214.  
  215. TYPE
  216.     TQ3AntiAliasMode                    = UInt32;
  217.     TQ3AntiAliasStyleDataPtr = ^TQ3AntiAliasStyleData;
  218.     TQ3AntiAliasStyleData = RECORD
  219.         state:                    TQ3Switch;
  220.         mode:                    TQ3AntiAliasMode;
  221.         quality:                Single;
  222.     END;
  223.  
  224. FUNCTION Q3AntiAliasStyle_New({CONST}VAR data: TQ3AntiAliasStyleData): TQ3StyleObject; C;
  225. FUNCTION Q3AntiAliasStyle_Submit({CONST}VAR data: TQ3AntiAliasStyleData; view: TQ3ViewObject): TQ3Status; C;
  226. FUNCTION Q3AntiAliasStyle_GetData(styleObject: TQ3StyleObject; VAR data: TQ3AntiAliasStyleData): TQ3Status; C;
  227. FUNCTION Q3AntiAliasStyle_SetData(styleObject: TQ3StyleObject; {CONST}VAR data: TQ3AntiAliasStyleData): TQ3Status; C;
  228.  
  229.  
  230. {$ALIGN RESET}
  231. {$POP}
  232.  
  233. {$SETC UsingIncludes := QD3DStyleIncludes}
  234.  
  235. {$ENDC} {__QD3DSTYLE__}
  236.  
  237. {$IFC NOT UsingIncludes}
  238.  END.
  239. {$ENDC}
  240.